import Vue from 'vue'
import './style.css'
import App from './App.vue'
import router from './router'
import store from './store'
import ElUi from './plugins/el-ui'
// 创建事件总线
const EventBus = new Vue();
Vue.prototype.$bus = EventBus;

Vue.config.productionTip = false

// --vue过滤器,把首字母大写，vue3中已经移除，官方推荐使用方法或者计算属性来替代过滤器
Vue.filter('capitalize', function (value) {
  if (!value) return '';
  value = value.toString();
  return value.charAt(0).toUpperCase() + value.slice(1);
});

// 全局注册一个名为 'focus' 的指令
Vue.directive('focus', {
  // 当被绑定的元素插入到 DOM 中时……
  inserted: function (el) {
    // 聚焦元素
    el.focus();
    el.addEventListener('blur', function () {
      // 失去焦点时，移除事件监听
      console.log('失去焦点了');
    })
  }
});
Vue.directive('highlight',{
  bind:function(el,binding){
    el.style.backgroundColor=binding.value;
  }
})
// --自定义组件库
Vue.use(ElUi)
new Vue({
  router,
  store,
  render: h => h(App),
}).$mount('#app')
